<!doctype html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>捞海底商城后台管理系统</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
    <link rel="stylesheet" href="css/font.css">
    <link rel="stylesheet" href="css/xadmin.css">
    <link rel="stylesheet" href="https://cdn.bootcss.com/Swiper/3.4.2/css/swiper.min.css">
    <script type="text/javascript" src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
    <script type="text/javascript" src="https://cdn.bootcss.com/Swiper/3.4.2/js/swiper.jquery.min.js"></script>
    <script src="lib/layui/layui.js" charset="utf-8"></script>
    <script type="text/javascript" src="js/xadmin.js"></script>
    <script src="https://cdn.bootcdn.net/ajax/libs/hogan.js/3.0.2/hogan.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>

</head>

<body>
    <!-- 顶部开始 -->
    <script type="text/javascript" src="./js/header.js"></script>
    <!-- 顶部结束 -->
    <!-- 中部开始 -->
    <div class="wrapper">
        <!-- 左侧菜单开始 -->
        <div class="left-nav">
            <div id="side-nav">
                <ul id="nav">
                    <li class="list" current>
                        <a href="index.html">
                            <i class="iconfont">&#xe761;</i>
                            信息汇总
                            <i class="iconfont nav_right">&#xe697;</i>
                        </a>
                    </li>
                    <li class="list">
                        <a href="javascript:;">
                            <i class="iconfont">&#xe70b;</i>
                            用户管理
                            <i class="iconfont nav_right">&#xe697;</i>
                        </a>
                        <ul class="sub-menu">
                            <li>
                                <a href="member-list.html">
                                    <i class="iconfont">&#xe6a7;</i>
                                    用户列表
                                </a>
                            </li>
                            <li>
                                <a href="member-del.html">
                                    <i class="iconfont">&#xe6a7;</i>
                                    用户删除
                                </a>
                            </li>
                            <li>
                                <a href="member-view.html">
                                    <i class="iconfont">&#xe6a7;</i>
                                    浏览记录
                                </a>
                            </li>
                        </ul>
                    </li>
                    <li class="list">
                        <a href="javascript:;">
                            <i class="iconfont">&#xe6a3;</i>
                            分类管理
                            <i class="iconfont nav_right">&#xe697;</i>
                        </a>
                        <ul class="sub-menu  opened">
                            <li class="current">
                                <a href="category.html">
                                    <i class="iconfont">&#xe6a7;</i>
                                    分类列表
                                </a>
                            </li>
                        </ul>
                    </li>
                    <li class="list">
                        <a href="javascript:;">
                            <i class="iconfont">&#xe6a3;</i>
                            订单管理
                            <i class="iconfont nav_right">&#xe697;</i>
                        </a>
                        <ul class="sub-menu">
                            <li>
                                <a href="order.html">
                                    <i class="iconfont">&#xe6a7;</i>
                                    订单列表
                                </a>
                            </li>
                        </ul>
                    </li>
                    <li class="list">
                        <a href="javascript:;">
                            <i class="iconfont">&#xe6a3;</i>
                            轮播管理
                            <i class="iconfont nav_right">&#xe697;</i>
                        </a>
                        <ul class="sub-menu" style="display:none">
                            <li>
                                <a href="banner-list.html">
                                    <i class="iconfont">&#xe6a7;</i>
                                    轮播列表
                                </a>
                            </li>
                        </ul>
                    </li>

                    <li class="list">
                        <a href="javascript:;">
                            <i class="iconfont">&#xe6a3;</i>
                            综合统计
                            <i class="iconfont nav_right">&#xe697;</i>
                        </a>
                        <ul class="sub-menu" style="display:none">
                            <li>
                                <a href="echarts1.html">
                                    <i class="iconfont">&#xe6a7;</i>
                                    折线图
                                </a>
                            </li>
                            <li>
                                <a href="echarts2.html">
                                    <i class="iconfont">&#xe6a7;</i>
                                    柱状图
                                </a>
                            </li>
                            <li>
                                <a href="echarts4.html">
                                    <i class="iconfont">&#xe6a7;</i>
                                    售出占比
                                </a>
                            </li>
                            <li>
                                <a href="echarts5.html">
                                    <i class="iconfont">&#xe6a7;</i>
                                    股市走向
                                </a>
                            </li>
                        </ul>
                    </li>
                </ul>
            </div>
        </div>
        <!-- 左侧菜单结束 -->
        <!-- 右侧主体开始 -->
        <div class="page-content">
            <div class="content">
                <!-- 右侧内容框架，更改从这里开始 -->
                <form class="layui-form xbs">
                    <div class="layui-form-pane" style="text-align: center;">
                        <div class="layui-form-item" style="display: inline-block;">
                            <div class="layui-input-inline">
                                <input type="text" name="keywords" placeholder="请输入商品名" autocomplete="off"
                                    class="layui-input searchInput">
                            </div>
                            <div class="layui-input-inline" style="width:80px">
                                <button class="layui-btn seachBtn" lay-submit="search" lay-filter="search"
                                    type="submit"><i class="layui-icon">&#xe615;</i></button>
                            </div>
                        </div>
                    </div>
                </form>
                <xblock>
                    <!-- <button class="layui-btn layui-btn-danger" onclick="delAll()"><i
                    class="layui-icon">&#xe640;</i>批量删除</button> -->
                    <button class="layui-btn"
                onclick="member_add('添加商品','add-good.html','600','500')"><i
                    class="layui-icon">&#xe608;</i>添加</button><span class="x-right" id="get-time"
                style="line-height:40px">获取时间</span></xblock>
                <table class="layui-table">
                    <thead>
                        <tr>
                            <th>
                                种类ID
                            </th>
                            <th>
                                种类
                            </th>
                            <th>
                                商品ID
                            </th>
                            <th>
                                商品名
                            </th>
                            <th>销量</th>
                            <th>库存</th>
                            <th>
                                加入时间
                            </th>
                            <th>
                                登记
                            </th>
                            <th>
                                操作
                            </th>
                        </tr>
                    </thead>
                    <tbody>
    
                    </tbody>
                </table>
                <!-- 右侧内容框架，更改从这里结束 -->
            </div>
        </div>
        <!-- 右侧主体结束 -->
    </div>
    <!-- 中部结束 -->
    <!-- 底部开始 -->
    <div class="footer">
        <div class="copyright">Copyright ©2022 海底捞商城 All Rights Reserved. 本后台系统由凌晨三点海底捞提供技术支持</div>
    </div>
    <!-- 底部结束 -->
    <!-- 背景切换开始 -->
    <div class="bg-changer">
        <div class="swiper-container changer-list">
            <div class="swiper-wrapper">
                <div class="swiper-slide"><img class="item" src="images/a.jpg" alt=""></div>
                <div class="swiper-slide"><img class="item" src="images/b.jpg" alt=""></div>
                <div class="swiper-slide"><img class="item" src="images/c.jpg" alt=""></div>
                <div class="swiper-slide"><img class="item" src="images/d.jpg" alt=""></div>
                <div class="swiper-slide"><img class="item" src="images/e.jpg" alt=""></div>
                <div class="swiper-slide"><img class="item" src="images/f.jpg" alt=""></div>
                <div class="swiper-slide"><img class="item" src="images/g.jpg" alt=""></div>
                <div class="swiper-slide"><img class="item" src="images/h.jpg" alt=""></div>
                <div class="swiper-slide"><img class="item" src="images/i.jpg" alt=""></div>
                <div class="swiper-slide"><img class="item" src="images/j.jpg" alt=""></div>
                <div class="swiper-slide"><img class="item" src="images/k.jpg" alt=""></div>
                <div class="swiper-slide"><span class="reset">初始化</span></div>
            </div>
        </div>
        <div class="bg-out"></div>
        <div id="changer-set"><i class="iconfont">&#xe696;</i></div>
    </div>
    <!-- 背景切换结束 -->
    <!-- 页面动态效果 -->
    <script>

        layui.use(['laydate'], function () {
            laydate = layui.laydate;//日期插件

            //以上模块根据需要引入
            //



            var start = {
                min: laydate.now()
                , max: '2099-06-16 23:59:59'
                , istoday: false
                , choose: function (datas) {
                    end.min = datas; //开始日选好后，重置结束日的最小日期
                    end.start = datas //将结束日的初始值设定为开始日
                }
            };

            var end = {
                min: laydate.now()
                , max: '2099-06-16 23:59:59'
                , istoday: false
                , choose: function (datas) {
                    start.max = datas; //结束日选好后，重置开始日的最大日期
                }
            };

            document.getElementById('LAY_demorange_s').onclick = function () {
                start.elem = this;
                laydate(start);
            }
            document.getElementById('LAY_demorange_e').onclick = function () {
                end.elem = this
                laydate(end);
            }

        });

        //批量删除提交
        function delAll() {
            layer.confirm('确认要删除吗？', function (index) {
                //捉到所有被选中的，发异步进行删除
                layer.msg('删除成功', { icon: 1 });
            });
        }
        /*用户-添加*/
        function member_add(title, url, w, h) {
            x_admin_show(title, url, w, h);
        }
        /*用户-查看*/
        function member_show(title, url, id, w, h) {
            x_admin_show(title, url, w, h);
        }

        /*商品-下架*/
        function member_stop(obj, id) {
            layer.confirm('确认要下架吗？', function (index) {
                //发异步把商品状态进行更改
                console.log(id);
                axios.put(`${host}/product/${id}/down`, null,
                    {
                        headers: {
                            'Authorization': window.localStorage.getItem('token')
                        }
                    })
                    .then(res => {
                        if (res.data.status == 20) {
                            $(obj).parents("tr").find(".td-manage").prepend('<a style="text-decoration:none" onClick="member_start(this,id)" href="javascript:;" title="上架"><i class="layui-icon">&#xe62f;</i></a>');
                            $(obj).parents("tr").find(".td-status").html('<span class="layui-btn layui-btn-disabled layui-btn-mini">已下架</span>');
                            $(obj).remove();
                            layer.msg('已下架!', { icon: 5, time: 1000 });
                        } else {
                            layer.msg('下架失败!', { icon: 5, time: 1000 });
                        }
                    })
                    .catch(err => {
                        console.error(err);
                    })



            });
        }

        /*商品-上架*/
        function member_start(obj, id) {
            layer.confirm('确认要上架吗？', function (index) {
                //发异步把商品状态进行更改
                axios.put(`${host}/product/${id}/up`, null, {
                    headers: {
                        'Authorization': window.localStorage.getItem('token')
                    }

                })
                    .then(res => {
                        if (res.data.status == 20) {
                            $(obj).parents("tr").find(".td-manage").prepend('<a style="text-decoration:none" onClick="member_stop(this,id)" href="javascript:;" title="下架"><i class="layui-icon">&#xe601;</i></a>');
                            $(obj).parents("tr").find(".td-status").html('<span class="layui-btn layui-btn-normal layui-btn-mini">正常</span>');
                            $(obj).remove();
                            layer.msg('已上架!', { icon: 6, time: 1000 });
                        } else {
                            layer.msg('上架失败!', { icon: 5, time: 1000 });
                        }
                    })
                    .catch(err => {
                        console.error(err);
                    })



            });
        }
        // 商品-编辑
        function member_edit(title, url, id, w, h) {
            x_admin_show(title, url, w, h);
        }
        /*商品-修改*/
        function member_password(title, url, id, w, h) {
            x_admin_show(title, url, w, h);
        }
        /*商品-删除*/
        function member_del(obj, id) {
            layer.confirm('确认要删除吗？', function (index) {
                //发异步删除数据
                axios.delete(`${host}/product/${id}`, {
                    headers: {
                        'Authorization': window.localStorage.getItem('token')
                    }
                })
                    .then(res => {
                        if (res.data.status == 20) {
                            $(obj).parents("tr").remove();
                            layer.msg('已删除!', { icon: 1, time: 1000 });
                        } else {
                            layer.msg('删除失败!', { icon: 1, time: 1000 });
                        }
                    })
                    .catch(err => {
                        console.error(err);
                    })


            });
        }
    </script>
    <script>
        $(function () {
            $("input[name='keywords']").data('downFlag', true)
        })
        $('#get-time').text(function () {
            var time = new Date();
            return "获取数据时间： "+ time.getFullYear() + '-' + (time.getMonth() + 1) + '-' + time.getDate() + ' ' + time.getHours() + ':' + time.getMinutes() + ':' + time.getSeconds();
        })
        const host = 'http://1.116.147.57:8080'
        let categoryList;
        axios.get(`${host}/categories/level/1`,)
            .then(res => {
                console.log(res)
                categoryList = res.data.data
            })
            .catch(err => {
                console.error(err);
            })
        function addProduct(data) {
            let compiledResult = Hogan.compile(`{{#data}}
                                    <tr>
                            <td>
                                {{categoryId}}
                            </td>
                            <td>
                                {{categoryName}}
                            </td>
                            <td class="productId">
                                {{productId}}
                            </td>
                            <td>
                                {{name}}
                            </td>
                            <td>{{sales}}</td>
                            <td>{{inventory}}</td>
                            <td>
                                {{createTime}}
                            </td>
                            <td class="td-status">
                                <span class="layui-btn layui-btn-normal layui-btn-mini">
                                    {{status}}
                                </span>
                            </td>
                            <td class="td-manage">
                                <a style="text-decoration:none" onclick="member_stop(this,'{{productId}}')" href="javascript:;"
                                    title="下架">
                                    <i class="layui-icon">&#xe601;</i>
                                </a>
                                <a title="删除" href="javascript:;" onclick="member_del(this,'{{productId}}')"
                                    style="text-decoration:none">
                                    <i class="layui-icon">&#xe640;</i>
                                </a>
                            </td>
                        </tr>
                        {{/data}}`);
            let result = compiledResult.render({
                data: data
            });


            $('table.layui-table tbody').append(result);
            let trArr = ($('table.layui-table tbody tr'))
            for (let i = 0; i < trArr.length; i++) {


                let item = trArr[i]
                if ($(item).find('td.td-status span').text().trim() == "已下架") {
                    console.log(1);
                    console.log($(item).find('a[title="下架"]').text());
                    $(item).find('a[title="下架"]').remove()
                    $(item).find('a[title="上架"]').remove()
                    $(item).find(".td-manage").prepend(`<a style="text-decoration:none" onClick="member_start(this,${$(item).find('td.productId').text().trim()})" href="javascript:;" title="上架"><i class="layui-icon">&#xe62f;</i></a>`)
                    $(item).find('td.td-status span').removeClass('layui-btn-normal').addClass('layui-btn-disabled layui-btn-mini').text('已下架')
                }
            }

        }
        // get product data

        function getProductData(page, size) {
            axios.get(`${host}/product/all?page=${page}&size=${size}`)
                .then(res => {
                    res.data.data.forEach(element => {
                        element.name = element.name.substring(0, 24) + '...';
                        for (let i = 0; i < categoryList.length; i++) {
                            if (categoryList[i].categoryId == element.categoryId) {
                                element.categoryName = categoryList[i].name;
                                break;
                            }
                        }
                    });
                    addProduct(res.data.data)
                })
                .catch(err => {
                    console.error(err);
                })
        }
        $(window).scroll(function () {
            if ($("input[name='keywords']").data('downFlag') == false) {
                return;
            }
            // scroll at bottom
            if ($(window).scrollTop() + $(window).height() == $(document).height()) {
                // load data
                console.log('get more data');
                currentPage++;
                getProductData(currentPage, 10);
            }

        });
        let currentPage = 1;
        let size = 20;
        getProductData(currentPage, size);

        // search product

    </script>
    <script>
        $(function () {
            layui.use('form', function () {
                var form = layui.form();
                //监听提交
                
                form.on('submit(search)', function (data) {
                    if (data.field.keywords == '') {
                        layer.msg('请输入关键字', { icon: 2, time: 1000 });
                        return false;
                    }
                    $("input[name='keywords']").data('downFlag', false)
                    $.get(
                        `${host}/product/search/all/${data.field.keywords}?page=1&size=1000`, null,
                        function (res) {
                            console.log(res);
                            res.data.forEach(element => {
                                element.name = element.name.substring(0, 24) + '...';
                                for (let i = 0; i < categoryList.length; i++) {
                                    if (categoryList[i].categoryId == element.categoryId) {
                                        element.categoryName = categoryList[i].name;
                                        break;
                                    }
                                }
                            });
                            $('table.layui-table tbody').empty();
                            console.log('clear data');
                            addProduct(res.data)
                            downFlag = false
                        }
                    )

                    return false;
                });

            });
        })
    </script>
</body>

</html>